Supporting Persistent C++ Objects in a Distributed Storage System

نویسندگان

  • Anand Ranganathan
  • Yury Izrailevsky
  • Sai Susarla
  • John Carter
  • Gary Lindstrom
چکیده

We have designed and implemented a C++ object layer for Khazana, a distributed persistent storage system that exports a flat shared address space as its basic abstraction. The C++ layer described herein lets programmers use familiar C++ idioms to allocate, manipulate, and deallocate persistent shared data structures. It handles the tedious details involved in accessing this shared data, replicating it, maintaining consistency, converting data representations between persistent and in-memory representations, associating type information including methods with objects, etc. To support the C++ object layer on top of Khazana’s flat storage abstraction, we have developed a language-specific preprocessor that generates support code to manage the user-specified persistent C++ structures. We describe the design of the C++ object layer and the compiler and runtime mechanisms needed to support it.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Integrating Group Communication with Transactions for Implementing Persistent Replicated Objects

A widely used computational model for constructing fault-tolerant distributed applications employs atomic transactions for controlling operations on persistent objects. There has been considerable work on data replication techniques for increasing the availability of persistent data that is manipulated under the control of transactions. Process groups with ordered group communications (process ...

متن کامل

Object Replication in Arjuna

Arjuna is a fault tolerant distributed system supporting nested atomic actions (nested atomic transactions) that are used for controlling operations on objects (instances of C++ classes). Objects are long lived entities (persistent) and are the main repositories for holding system state; they are also the units of replication for increasing availability. This paper describes the design and impl...

متن کامل

Understanding the Role of Atomic Transactions and Group Communications in Implementing Persistent Replicated Objects

A widely used computational model for constructing fault-tolerant distributed applications employs atomic transactions for controlling operations on persistent objects. There has been considerable work on data replication techniques for increasing the availability of persistent data that is manipulated under the control of transactions. Process groups with ordered group communications has also ...

متن کامل

Sharing Objects in a Distributed System

This paper presents a design for the use of DSM techniques and system-supported synchronisation to support shared access to persistent objects in a distributed environment. We adopt a hybrid approach where the system granularity is sometimes pages and sometimes objects. We are interested in providing shared access to small (i.e., less than a page) objects in a general purpose, language-independ...

متن کامل

European ACM SIGOPS Workshop System support for shared objects

This position paper supports the view that a model based on shared objects is an attractive alternative to message passing for structuring distributed applications and that a distributed operating system should provide support for shared persistent objects. The paper reviews several recently proposed solutions, including our own, and outlines some current problems. 1. MOTIVATION Shared objects ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999